package vista;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

import modelo.ClienteDTO;
import controlador.Banco;

public class ventanaNuevoCliente extends JFrame {

        private static final long serialVersionUID = 1L;
        private Banco banco;
        private JPanel panel;
        private JLabel lblNombre;
        private JTextField txtNombre;
        private JLabel lblApellido;
        private JTextField txtApellido;
        private JLabel lblDNI;
        private JTextField txtDNI;
        private JLabel lblDomicilio;
        private JTextField txtDomicilio;
        private JLabel lblFechaNac;
        private JTextField txtFechaNac;
        private JButton btnAceptar;
        private JButton btnCancelar;

        public ventanaNuevoCliente(Banco banco) {
                super();
                this.banco = banco;
                cargarVentana();
                establecerAcciones();

        }

        private void establecerAcciones() {
                btnAceptar.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent evt) {
                                
                                ClienteDTO cDTO = banco.crearCliente(txtNombre.getText(), txtApellido.getText(),
                                                Integer.parseInt(txtDNI.getText()),
                                                txtDomicilio.getText(),txtFechaNac.getText());
                                
                                if(cDTO!=null){
                                        JOptionPane.showMessageDialog(null, "El Cliente "
                                                        + txtNombre.getText()+" "+txtApellido.getText()+" "
                                                        + " ha sido creado", "Exito",
                                                        JOptionPane.INFORMATION_MESSAGE);
                                }else{
                                        JOptionPane.showMessageDialog(null, "El Cliente "
                                                        + txtNombre.getText()+" "+txtApellido.getText()+" "
                                                        + " existe", "Error",
                                                        JOptionPane.ERROR_MESSAGE);
                                }
                        }
                });
                
                btnCancelar.addActionListener(new ActionListener(){
        			public void actionPerformed(ActionEvent evt){
        				setVisible(false);
        			}
        		});

        }

        private void cargarVentana() {
                setSize(400, 550);
                setVisible(true);
                panel = new JPanel();
                panel.setBounds(getBounds());
                panel.setLayout(null);
                lblNombre = new JLabel("Nombre");
                lblNombre.setBounds(20, 30, 80, 25);
                panel.add(lblNombre);
                txtNombre = new JTextField();
                txtNombre.setBounds(100, 30, 290, 25);
                panel.add(txtNombre);
                lblApellido = new JLabel("Apellido");
                lblApellido.setBounds(20, 60, 80, 25);
                panel.add(lblApellido);
                txtApellido = new JTextField();
                txtApellido.setBounds(100, 60, 290, 25);
                panel.add(txtApellido);
                lblDNI = new JLabel("DNI");
                lblDNI.setBounds(20, 90, 80, 25);
                panel.add(lblDNI);
                txtDNI = new JTextField();
                txtDNI.setBounds(100, 90, 290, 25);
                panel.add(txtDNI);
                lblFechaNac = new JLabel("Fecha Nac");
                lblFechaNac.setBounds(20, 120, 80, 25);
                panel.add(lblFechaNac);
                txtFechaNac = new JTextField();
                txtFechaNac.setBounds(100, 120, 290, 25);
                panel.add(txtFechaNac);
                lblDomicilio = new JLabel("Domicilio");
                lblDomicilio.setBounds(20, 150, 80, 25);
                panel.add(lblDomicilio);
                txtDomicilio = new JTextField();
                txtDomicilio.setBounds(100, 150, 290, 25);
                panel.add(txtDomicilio);
                btnAceptar = new JButton("Aceptar");
                btnAceptar.setBounds(90, 450, 90, 25);
                panel.add(btnAceptar);
                btnCancelar = new JButton("Cancelar");
                btnCancelar.setBounds(200, 450, 90, 25);
                panel.add(btnCancelar);
                this.add(panel);

        }

}